/*
蓝桥杯不允许使用stoi，那么string型数字就无法相加
*/
#include<bits/stdc++.h>
using namespace std;
string add(string s1,string s2){
	int carry=0;
    //在计算之前一定要把两个字符串转化成一样长的
    while(s1.size()<s2.size()) s1='0'+s1;
    while(s2.size()<s1.size()) s2='0'+s2;
    string s=s1;
    //这里必须把s设置成其中一个字符串，因为下面会用到s[i]
	for(int i=s1.size()-1;i>=0;i--){
		s[i]=(s1[i]-'0'+s2[i]-'0'+carry)%10+'0';
		carry=(s1[i]-'0'+s2[i]-'0'+carry)/10;
	}
	if(carry>0) s="1"+s;
	return s;
}
int main(){
    string a="12";
    string b="129";
    string ans=add(a,b);
    cout<<ans<<endl;
}